#pragma once

#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <string>
#include <stdexcept>

class SocketObj {
public:
    // 构造函数：创建客户端socket并连接到服务器
    SocketObj(const std::string &ip, int port);
    // 析构函数：关闭客户端socket
    ~SocketObj();

    // 发送数据
    ssize_t sendData(const void *buffer, size_t len);
    // 接收数据
    ssize_t recvData(void *buffer, size_t len);
    
private:
    int sockfd;
    struct sockaddr_in server_addr;
};

